<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div id="app">
        <!-- 绑定事件时如果没加小括号，那么默认参数就是事件对象 -->
        <button @click="fn1">点我啊 --没加小括号</button>
        <!-- 如果绑定事件时，加了小括号，就代表你要手动传参，那么你传什么参数就是什么 -->
        <button @click="fn2()">点我啊 --加了小括号</button>
        <button @click="fn3('hello')">点我啊 --加了小括号并传递了</button>
        <!-- 如果既想手动传参，又想拿到事件对象 -->
        <!-- 这个时候要通过$event来代表事件对象 -->
        <button @click="fn4('hello', $event)">点我啊 -- 加了小括号拿事件对象</button>
    </div>

    <script src="./vue.js"></script>
    <script>
        new Vue({
            el: '#app',
            methods: {

                fn1 (e) {
                    console.log(e) // 事件对象
                },

                fn2 (e) {
                    console.log(e) // undefined
                },
                fn3 (e) {
                    console.log(e) // hello
                },

                fn4 (a, b) {

                    console.log(a) // hello
                    console.log(b) // 事件对象

                    // $event只用在html行内
                    // console.log(this.$event) // undefined
                }
            }
        })
    </script>
</body>
</html>